1. Field of the Invention
The present invention relates to a method and apparatus for controlling high speed printing in a printer device which is connected to a computer system.
In recent years, a small-scaled computer system, represented by a personal computer, a work-station, or the like, tends to have relatively high functions. Also, a processing performance of the above-mentioned personal computer, etc., has been remarkably improved so as to satisfy various requirement of users.
With the advance of functions and processing performance of such a small-scaled computer system, peripheral devices connected to the computer system have been required to operate with a processing speed as high as data transferred from the computer system can be adequately processed.
Especially, in a printer device including a printer mechanism, which is representative of the peripheral devices, a conventional impact printer having continuous forms has been rapidly replaced with a non-impact printer (e.g., laser printer) having cut forms, in view to an increase of a printing speed and a reduction of mechanical noises.
2. Description of the Related Art
In regard to the above-mentioned non-impact printer having cut forms, which is utilized by connecting to a computer system, e.g., work-station, it is strongly desired that requirements for higher printing speed and lower cost for production should be simultaneously satisfied. In other words, to produce a non-impact printer having relatively high printing speed, it becomes necessary for a printer mechanism operating with sufficiently high speed to be developed, and also necessary for a printing control process by means of such a printer mechanism to be carried out with sufficiently high efficiency.
In a well-known method and apparatus for controlling a printer device, a microprocessor is provided in the printer device per se, or in an external controller. Usually, such a microprocessor is adapted to receive various interrupt signals, and to adequately treat these interrupt signals so as to carry out a control process of the whole printer device.
In such a printer device, the maximum (highest) printing speed is generally determined by a performance of a printer mechanism, i.e., printer engine. However, in order to maintain this maximum printing speed, it is necessary for printing data that is to be processed with a high speed substantially conforming to the maximum printing speed. In this viewpoint, the following two techniques for controlling high speed printing in a printer device have been heretofore adapted.
(1) In a first case, two kinds of bit-map memories (hereinafter, each bit-map memory will be sometimes abbreviated to BMM) are provided. While dot-data in one of these BMMs is transferred to the printer mechanism, printing data of the next page, which is sent from a host processor, is converted to corresponding dot-data. Subsequently, the corresponding dot-data is expanded in the remaining bit-map memory. According to such a first technique, the time necessary for expanding printing dada in each bit-map memory can be reduced, and therefore it becomes possible to maintain the maximum printing speed.
(2) In a second case, by utilizing spare time between the timing of completion of a process for transferring dot-data in one bit-map memory to the printer mechanism and the timing of start of transferring printing data of the next page, such printing data of the next page is converted to corresponding dot-data and expanded in the bit-map memory. According to such a second technique, the time necessary for expanding printing dada in the BMM can be also reduced, and it also becomes possible to maintain the maximum printing speed.
Here, a description regarding the above-mentioned spare time in the second technique will be given more specifically. As soon as a microprocessor in the printer device or an external controller takes out dot-data from a BMM and simultaneously sends an activation signal to the printer mechanism, this printer mechanism picks up a paper in a form feeding tray and carries out a heading process of the printing paper. Subsequently, the printer mechanism sends a transfer request signal for requesting to transfer the dot-data in the BMM to the microprocessor or the like.
Further, the microprocessor or the like receives this transfer request signal, and transfers the dot-data in the BMM to the printer mechanism. In this case, the so-called spare time as long as one second is usually generated, since the printer mechanism must pick up the printing paper in the form feeding tray during the time period between the time when a process for transferring the current dot-data to the printer mechanism is completed and the time when a process for transferring the next dot-data is started.
In the above-mentioned second technique (2), before the dot-data of each page is actually expanded, the time necessary for expanding the dot-data of a given page is calculated in advance (usually referred to as an order analysis or an analysis for data expansion). Further, it is examined whether or not the dot-data can be expanded in the BMM during the above-mentioned spare time. In the case where it is determined that the dot-data can be expanded in the BMM during the spare time, a process for expanding the dot-data in the BMM is actually executed during the spare time.
A method for starting up high speed printing in a printer device by utilizing such a second technique (2) is disclosed in a Japanese Unexamined Patent Publication (Kokai) No. 2-157926 (Japanese Patent application No. 63-312526) filed by the same applicant (Fujitsu limited).
Further, problems regarding the above-mentioned two techniques for controlling high speed printing in a printing device will be described.
In the first technique (1), it is necessary for two memory cards of bit-map memories (BMMs) to be prepared. Therefore, the amount of hardware for constituting these BMMs increases up to the amount twice as large as the case in which a single BMM is used. Consequently, the first technique has a disadvantage that cost for fabricating an apparatus for controlling printing is likely to increase owing to two kinds of BMMs.
On the contrary, in the second technique (2), since a single BMM is utilized, the amount of hardware can be smaller than that in the first technique (1). However, in this case, the higher a printing speed of the printer mechanism becomes, the shorter the time required for printing one page becomes. As the time for printing one page decreases, the time required for picking up a printing paper is likely to be reduced. Namely, the spare time, which is defined as the time period between the time when a process for transferring the current dot-data to the printer mechanism is completed and the time when a process for transferring the next dot-data is started, also decreases.
Therefore, a microprocessor or the like does not have enough time to convert printing data of the next page to corresponding dot-data and to expand the thus converted dot-data in the BMM. Consequently, the second technique has a disadvantage that it becomes difficult to expand the dot-data in the BMM during the spare time with the improvement of the printing speed of the printer mechanism.